FurryOS Gen2.1_v2

FurryOS

Codename: Sovereign Universe. Built with intelligence. Designed with heart.

FurryOS Gen2.1_v2 GENOME.yaml

A single, human-editable 760‑line DNA file that controls identity, modes, themes, assets, and installer behavior. Fork it. Theme it. Own it.

🦊
5 Furry‑Optimized Modes
Granny, Normal, Gamer, Hacker, Ghost
🎨
Total Asset Control
Wallpapers, sounds, icons, music
🌌
AnthroHeart Universe
Lore‑aware distro DNA
⚙️
Version‑Controlled
Git it, fork it, trade it

🐾 3-Minute Entry Ritual to FurryOS

No manuals. No gatekeeping. Just one ISO, one shuffle button, one wallpaper… and you’re in the atmosphere.

  1. Download the ISO (4.8GB)
    https://furry-os.org/assets/iso/furryos-gen2.1-v2.iso
  2. Boot it or run it in a VM (GNOME Boxes / QEMU)
    Recommended: BIOS mode · 40GB storage · 8GB RAM
  3. Choose “Live System” at the boot screen
  4. Explore wallpapers
    user’s home → ~/FurryOS/wallpapers
  5. Explore music
    user’s home → ~/FurryOS/music
  6. Open VLC → Open Folder ~/FurryOS/music
    Then shuffle the playlist.
  7. Start the slideshow
    Open one image in Caja inside wallpapers and press F5
  8. Chill
    Let the music + slideshow fuse into the FurryOS vibe.
💿

FurryOS Gen2.1_v2 Live ISO (4.8GB)

Default Lockscreen User: user

Default Lockscreen Password: live

A complete live operating system based on Debian Live MATE. Includes Granny, Normal, Gamer, Hacker, and Ghost modes.

Use BIOS mode, 8GB recommended RAM, 40GB recommended diskspace.
Note that the Desktop icons are in ~/FurryOS/Desktop and need to be tweaked.
Startup sound should work. Wallpapers available in ~/FurryOS/wallpapers

Download FurryOS Gen2.1_v2 Live ISO
SHA256 Checksum d7c152e97262dbfa122ba3a4ed640b4c
d1c804fa05e440aff1abdf2f2bed6bb8
📦

FurryOS Gen2.1_v2 Complete Builder Workspace (1.1GB)

The full building workspace includes the asset payload used by FurryOS Gen2.1_v2: Wallpapers, sounds, music, desktop files, documentation, and artwork and the ability to generate your own OS and test drive in five minutes.

Download FurryOS Complete Builder Workspace
SHA256 Checksum af7ed9b8f4fc67e0e1a0fe0d047e0acd
b1d932747027e8c1a4b553988ee5855e
🧬

Project Genome & Source

The complete FurryOS Gen2.1_v2 builder system: GENOME.yaml, scripts, and reproducible ISO toolchain.

View Source on GitHub

Fuel the Sovereign Universe

FurryOS is free and open forever (MIT License). If this project brings you joy, consider fueling the Architect and the future of the AnthroHeart Saga.

❤️ Support on Ko-fi

FurryOS WAV Masters (147 songs / 5.4GB lossless 48kHz)


Checksum: 2131d7e6350b17f0dd8d807370bf86b5f325922b356467e670216f5e7b7ee182


🧬 Development Artifact: heartbeat_core.asm

An exploratory low-level system heartbeat written during early FurryOS development by Gemini 3 Pro at my guidance. Preserved as an artifact of boundary exploration. I wanted one Assembly code where it counted. Now I just mount the Debian 13/MATE Live ISO, so no need for low-level programming.

View assembly source

      ; =====================================================================
      ; FURRYOS — heartbeat_core.asm
      ; Exploratory x86_64 assembly for ultra-low-latency system heartbeat
      ; Investigates RDTSC timing, cache behavior, and tight monitoring loops
      ; =====================================================================

      section .data
          align 64
          monitor_state: times 8 dq 0    ; 64-byte aligned state

      section .text
          global asm_monitor_loop
          global asm_get_cycles
          global asm_measure_latency

      ; ==============================================================================
      ; Get CPU cycle count (RDTSC)
      ; Returns: RAX = cycle count
      ; ==============================================================================
      asm_get_cycles:
          push rbx
          push rcx
          push rdx

          xor eax, eax
          cpuid                   ; Serialize
          rdtsc                   ; Read timestamp counter
          shl rdx, 32
          or rax, rdx            ; Combine into 64-bit

          pop rdx
          pop rcx
          pop rbx
          ret

      ; ==============================================================================
      ; Measure operation latency
      ; Args: RDI = function pointer to measure
      ; Returns: RAX = cycles elapsed
      ; ==============================================================================
      asm_measure_latency:
          push rbx
          push r12
          push r13

          mov r12, rdi           ; Save function pointer

          ; Get start cycles
          xor eax, eax
          cpuid
          rdtsc
          shl rdx, 32
          or rax, rdx
          mov r13, rax           ; r13 = start_cycles

          ; Call measured function
          call r12

          ; Get end cycles
          rdtsc
          shl rdx, 32
          or rax, rdx            ; rax = end_cycles

          ; Calculate delta
          sub rax, r13           ; rax = end - start

          pop r13
          pop r12
          pop rbx
          ret

      ; ==============================================================================
      ; Main monitoring loop (optimized hot path)
      ; Args:
      ;   RDI = iterations (uint64_t)
      ;   RSI = callback function pointer (void (*)(uint64_t cycles))
      ; ==============================================================================
      asm_monitor_loop:
          push rbp
          mov rbp, rsp
          push rbx
          push r12
          push r13
          push r14
          push r15

          mov r14, rdi           ; r14 = iterations
          mov r15, rsi           ; r15 = callback
          xor r12, r12           ; r12 = counter

          ; Align stack for calls
          and rsp, -16

      .loop:
          ; === HOT PATH START ===

          ; Prefetch next cache line
          lea rax, [monitor_state + 64]
          prefetcht0 [rax]

          ; Get timestamp (start)
          xor eax, eax
          cpuid
          rdtsc
          shl rdx, 32
          or rax, rdx
          mov r13, rax           ; r13 = start_cycles

          ; === MONITORED OPERATION ===
          ; (Your monitoring logic here - keeping minimal for performance)
          ; Example: memory fence + cache flush
          mfence
          clflush [monitor_state]
          mfence

          ; Get timestamp (end)
          rdtsc
          shl rdx, 32
          or rax, rdx            ; rax = end_cycles

          ; Calculate latency
          sub rax, r13           ; rax = latency in cycles

          ; === HOT PATH END ===

          ; Call callback with latency
          mov rdi, rax
          call r15

          ; Increment and check loop
          inc r12
          cmp r12, r14
          jl .loop

          ; Cleanup
          mov rsp, rbp
          pop r15
          pop r14
          pop r13
          pop r12
          pop rbx
          pop rbp
          ret

      ; ==============================================================================
      ; Fast memory copy with cache optimization
      ; Args:
      ;   RDI = dest
      ;   RSI = src
      ;   RDX = size (bytes)
      ; ==============================================================================
          global asm_fast_memcpy
      asm_fast_memcpy:
          mov rcx, rdx
          shr rcx, 3             ; rcx = qwords
          rep movsq              ; Fast 64-bit copy

          mov rcx, rdx
          and rcx, 7             ; Remaining bytes
          rep movsb
          ret

      ; ==============================================================================
      ; Cache-aligned zero memory
      ; Args:
      ;   RDI = address
      ;   RSI = size (bytes)
      ; ==============================================================================
          global asm_zero_memory
      asm_zero_memory:
          xor rax, rax
          mov rcx, rsi
          shr rcx, 3             ; qwords
          rep stosq

          mov rcx, rsi
          and rcx, 7
          rep stosb
          ret
          

This artifact documents an evolutionary path explored during development. The current FurryOS architecture favors declarative configuration and portability over cycle-level instrumentation.

FurryOS Facebook User's Group Open • Sovereign • Community-Driven Contributors Welcome
"FurryOS was sustained by Sparkling ICE 🥤🫧 — refreshing hydration, not dehydrating like old-school gamer fuel energy drinks!"